یک تحلیلگر داده چه کاری انجام میدهد؟
یک تحلیلگر داده وظیفه جمعآوری، پالایش و تجزیه و تحلیل آماری دادهها را دارد. به بیان دقیقتر، دادهها را بر مبنای راهکاری مشخص یا ابداعی پالایش میکند تا بتوان به شکل دقیقی از آنها استفاده کرد. تحلیلگران دادهها به سازمانها کمک میکنند تا تصمیمات درست بگیرند و دادههای خام را که برای سهولت کار با استفاده از فرمولهای خاص و استفاده از الگوریتمهای مناسب جمعآوری شدهاند، اولویتبندی کنند. اگر علاقه زیادی به اعداد و کارکردهای جبری دارید و از بهاشتراک گذاشتن کار خود با افراد دیگر لذت میبرید در این صورت به عنوان یک تحلیلگر داده سرآمد شناخته خواهید شد. در این مقاله بهطور کلی مروری بر این نقش خواهیم داشت و نکات مفیدی را با شما بهاشتراک قرار میدهیم که موفقیت در کار را برای شما به ارمغان خواهند آورد.
مهارت های لازم برای تبدیل شدن به یک تحلیلگر داده موفق
بهطور معمول تحلیلگران دادهها باید مهارتهای مشخصی را داشته باشند تا بتوانند وظایف خود را به بهترین شکل انجام دهند. از جمله این مهارتها به موارد زیر باید اشاره کرد:
- Microsoft Excel: اگر دادهها به درستی ساختار پیدا نکنند ارزشی ندارند. اکسل مجموعهای از قابلیتها را فراهم میکند تا مدیریت دادهها راحت و بدون دردسر باشد.
- تسلط اولیه بر مهارتهای اساسی SQL.
- تسلط اولیه بر مهارتهای اساسی توسعه وب.
- مهارت در زمینه یافتن الگوها در مجموعه دادههای بزرگ.
- مهارت در زمینه نگاشت دادهها.
- توانایی استخراج بینش عملی از دادههای پردازش شده.
البته به این نکته دقت کنید که تجزیه و تحلیل دادهها با مباحث آماری و ریاضیات سطح بالا همپوشانی دارد و در ارتباط با موارد دیگر، برخی مهارتها مثل برنامهنویسی و توسعه نرمافزار در یکدیگر ادغام میشوند.
مهارتهای برنامهنویسی برای شغل تحلیلگر داده
زبانهای برنامهنویسی R و Python دو زبان برنامهنویسی محبوب برای تحلیلگران داده هستند. در حالی که R از محاسبات آماری و گرافیکی پشتیبانی میکند، سهولت استفاده پایتون آنرا به زبان خوبی برای استفاده در پروژههای بزرگ تبدیل میکند.
زبان برنامهنویسی R
هنگامی که در مورد زبان آر صحبت میکنیم، زمینههای خاصی وجود دارد که باید آنها را مورد توجه قرار دهید تا درک خوبی از زبان و کار خود داشته باشید. Dplyr یک بسته نرمافزار کامل است که به عنوان پلی بین R و SQL عمل میکند. بسته فوق نه تنها کدها را به زبان SQL ترجمه میکند، بلکه در ارتباط با نوعهای دادهای نیز قابلیتهای خوبی در اختیار متخصصان قرار میدهد.
علاوه بر این، ggplot2 سیستمی است که به کاربران کمک میکند تا طرحها را بصورت تکرارشونده بسازند تا بعداً بر اساس یک مدل گرافیکی قابل ویرایش شوند. همچنین، دو زیر سیستم Ggplot2 بهنامهای ggally (برای آمادهسازی نمودارهای شبکه) و ggpairs (در ارتباط با ماتریس) در دسترس متخصصان علم دادهها قرار دارد.
reshape2: ابزاری است که بر مبنای دو فرمت meta و cast دادهها را تبدیل میکند. در حالی که meta دادهها را نوع broad به long تبدیل میکند، cast عملکردی در جهت عکس دارد.
پایتون
پایتون یکی از سادهترین زبانهای برنامهنویسی است که متخصصان و افراد تازهکار دوست دارند از آن استفاده کنند. این زبان برنامهنویسی را بستهها و کتابخانههای قدرتمندی که در زمینه تجزیه و تحلیل دادهها به کار گرفته میشوند پشتیبانی میکنند. از جمله این بستهها بایدب ه numpy ، pandas ، matplotlib ، scipy ، scikit-learn ، ipython ، notebook های ipython ، anaconda و seaborn اشاره کرد.
آمار
اگر دادهها به درستی تفسیر نشوند، برنامهنویسی سود چندانی ندارد. اگر در مورد دادهها صحبت میکنیم، آمار همیشه به میدان وارد میشوند. بسیاری از مهارتهای آماری برای ایجاد یک مسیر شغلی به تحلیلگر دادهها کمک میکنند. از جمله این موارد باید به تشکیل مجموعه دادهها، دانش اولیه برای محاسبه میانگین، محاسبه انحراف معیار، ارزیابی وضعیت، SD و سایر متغیرها، هیستوگرامها، صدکها، احتمال، ANOVA و توزیع دادهها در گروههای خاص لازم اشاره کرد.
ریاضیات
تجزیه و تحلیل دادهها در حقیقت بازی با اعداد است. اگر مهارت خوبی در زمینه کار با اعداد دارید، نباید از شغل تحلیلگر دادهها غافل شوید. دانش پیشرفته در مورد ماتریسها و جبرهای خطی، جبر رابطهای، قضیه CAP، دادههای framing و مجموعهها برای موفقیت به عنوان تحلیلگر داده ضروری است.
یادگیری ماشین
اگر میخواهید یک تحلیلگر داده خبره شوید، یادگیری ماشین یکی از مهمترین مهارتهایی است که باید به فکر یادگیری آن باشید. یادگیری ماشین در اصل ترکیبی از مهارتهای مرتبط با حساب چند متغیره و جبر خطی همراه با آمار است. لازم نیست وقت خود را روی یادگیری هیچیک از الگوریتمهای یادگیری ماشین سرمایهگذاری کنید، بلکه تنها باید به فکر ارتقا مهارتهای خود باشید. بهطور کلی سه نوع یادگیری ماشین وجود دارد:
یادگیری با نظارت یا یادگیری تحت نظارت (Supervised learning) یکی از زیرمجموعههای یادگیری ماشینی است. با یک مثال عمومی وارد این بحث میشویم. یک میوه فروشی را در نظر بگیرید که تمام میوه ها را به صورت کاملاً جدا از هم مرتب کردهاست و شما نوع میوه را کاملاً میدانید، یعنی زمانی که یک میوه را در دست میگیرید به نام نوشته شده در قفسه آن نگاه میکنید و در میابید که مثلاً سیب است و اصطلاحاً میگویند تمام داده ها تگ گذاری شده هستند. به طبع فردی از قبل دسته دادهها را مشخص کردهاست. حال اگر با دید موجودی در حال یادگیری به ماجرا نگاه کنیم، انتظار میرود فرضاً مفهومی از سیبها را یاد بگیرد و احتمالاً در آینده نیز اگر تصویری از سیبها دید آن را تشخیص دهد. این روش، یک روش عمومی در یادگیری ماشین است که در آن به یک سیستم، مجموعه ای از جفتهای ورودی – خروجی ارائه شده و سیستم تلاش میکند تا تابعی از ورودی به خروجی را فرا گیرد. یادگیری تحت نظارت نیازمند تعدادی داده ورودی به منظور آموزش سیستم است. با این حال ردهای از مسائل وجود دارند که خروجی مناسب که یک سیستم یادگیری تحت نظارت نیازمند آن است، برای آنها موجود نیست. این نوع از مسائل چندان قابل جوابگویی با استفاده از یادگیری تحت نظارت نیستند. یادگیری تقویتی مدلی برای مسائلی از این قبیل فراهم میآورد. در یادگیری تقویتی، سیستم تلاش میکند تا تقابلات خود با یک محیط پویا را از طریق آزمون و خطا بهینه نماید. یادگیری تقویتی مسئلهای است که یک عامل که میبایست رفتار خود را از طریق تعاملات آزمون و خطا با یک محیط پویا فرا گیرد، با آن مواجه است. در یادگیری تقویتی هیچ نوع زوج ورودی- خروجی ارائه نمیشود. به جای آن، پس از اتخاذ یک عمل، حالت بعدی و پاداش بلافصل به عامل ارائه میشود. هدف اولیه برنامهریزی عاملها با استفاده از تنبیه و تشویق است بدون آنکه ذکری از چگونگی انجام وظیفه آنها شود.
یادگیری بدون نظارت: نوعی یادگیری ماشینی است که به دنبال الگوهای قبلاً کشف نشده در یک مجموعه داده بدون برچسب قبلی و با حداقل نظارت بر انسان است. بر خلاف یادگیری تحت نظارت که معمولاً از داده های دارای برچسب انسانی استفاده می شود، یادگیری بدون نظارت، همچنین به عنوان خودسازمانی شناخته میشود، امکان مدلسازی تراکم احتمال را نسبت به ورودیها فراهم میکند. یادگیری نیمه نظارت شده یک نوع مرتبط از تکنیکهای نظارت شده و بدون نظارت استفاده میکند. دو روش اصلی که در یادگیری بدون نظارت استفاده میشود، تحلیل مولفههای اصلی و تحلیل مولفههای خوشهای است. تجزیه و تحلیل خوشهای در یادگیری بدون نظارت برای گروهبندی یا تقسیمبندی مجموعه دادهها با ویژگیهای مشترک به منظور برون یابی روابط الگوریتمی استفاده میشود. تجزیه و تحلیل خوشهای شاخهای از یادگیری ماشین است که دادههایی را که برچسبگذاری یا طبقهبندی نشدهاند را گروهبندی میکند. تجزیه و تحلیل خوشهای به جای پاسخ دادن به بازخورد، نقاط مشترک دادهها را شناسایی میکند و بر اساس وجود یا عدم وجود چنین اشتراکاتی در هر قطعه جدید از دادهها واکنش نشان میدهد. این روش کمک میکند تا نقاط دادههای غیرعادی که در هر دو گروه نمیگنجد، شناسایی شود. تنها لازمهای که میتوان آنرا استراتژی یادگیری بدون نظارت نامید، یادگیری فضای جدیدی است که با به حداکثر رساندن برخی از عملکردهای هدف یا با به حداقل رساندن برخی از عملکردهای از دست رفته، ویژگیهای فضای اصلی را به تصویر میکشد. بنابراین، تولید یک ماتریس کوواریانس یادگیری بدون نظارت نیست، اما در نظر گرفتن بردارهای ویژه ماتریس کوواریانس به این دلیل است که عملیات ترکیب جبر خطی ، واریانس را به حداکثر میرساند. این به عنوان تجزیه و تحلیل مولفههای اصلی شناخته میشود. به همین ترتیب، ورود به سیستم یک مجموعه داده یادگیری بدون نظارت نیست، اما انتقال داده های ورودی از طریق چندین توابع سیگموئید در حالی که برخی از عملکردهای فاصله را بین دادههای تولید شده و حاصل از آن به حداقل میرساند، شناخته میشود و به عنوان خودرمزگذار شناخته میشود.
یادگیری تقویتی: یکی از گرایشهای یادگیری ماشینی است که از روانشناسی رفتارگرایی الهام میگیرد. این روش بر رفتارهایی تمرکز دارد که ماشین باید برای بیشینه کردن پاداشش انجام دهد. این مسئله، با توجه به گستردگیاش، در زمینههای گوناگونی بررسی میشود. مانند: نظریه بازیها، نظریه کنترل، تحقیق در عملیات، نظریه اطلاعات، سامانه چندعامله، هوش ازدحامی، آمار، الگوریتم ژنتیک، بهینهسازی بر مبنای شبیهسازی. در مبحث تحقیق در عملیات و در ادبیات کنترل، حوزهای که در آن روش یادگیری تقویتی مطالعه میشود برنامهنویسی تخمینی پویای (approximate dynamic programming) خوانده میشود. این مسئله در تئوری کنترل بهینه نیز مطالعه شدهاست. البته دغدغه اصلی بیشتر مطالعات در این زمینه، اثبات وجود پاسخ بهینه و یافتن ویژگیهای آن است و به دنبال جزئیات یادگیری یا تخمین نیست. یادگیری تقویتی در اقتصاد و نظریه بازیها بیشتر به بررسی تعادلهای ایجاد شده تحت عقلانیت محدود میپردازد. در یادگیری ماشینی با توجه به این که بسیاری از الگوریتمهای یادگیری تقویتی از تکنیکهای برنامهنویسی پویا استفاده میکنند معمولاً مسئله تحت عنوان یک فرایند تصمیمگیری مارکف مدل میشود. تفاوت اصلی بین روشهای سنتی و الگوریتمهای یادگیری تقویتی این است که در یادگیری تقویتی نیازی به داشتن اطلاعات راجع به فرایند تصمیمگیری ندارد و این که این روش روی فرایندهای مارکف بسیار بزرگی کار میکند که روشهای سنتی در آنجا ناکارآمدند.
آمادهسازی داده
آمادهسازی داده (Data wrangling) یا دادهورزی فرایند تبدیل دادهها از یک قالب داده خام به ساختار دیگر، با هدف ایجاد داده مناسبتر و با ارزشتر برای تحقق اهداف پاییندست گفته میشود که مانند تجزیه و تحلیل است. آمادهساز داده فردی است که این عملیات را محقق میکند. آمادهسازی داده، شامل تجسم دادهها، تجمیع داده، آموزش مدل آماری و موارد دیگر میشود.حلیلگران میتوانند بهطور متقابل به کاوش، تغییر و دستکاری دادهها بپردازند و فوراً نتایج را ببینند. آمادهساز تغییر داده کاربر را ردیابی میکند و سپس بهطور خودکار کد تولید میکند که میتوان آنها را بهطور مکرر در مجموعه دادههای دیگر اعمال کرد. برای این کار، ممکن است لازم باشد که با هر دو پایگاه داده مبتنی بر SQL و noSQL که به عنوان هاب مرکزی عمل میکنند، کار کنید. چند مثال شامل PostgreSQL ، Hadoop ، MySQL ، MongoDB ، Netezza ، Spark ، Oracle و غیره است.
ارتباطات و تجسم دادهها
وظیفه تحلیلگر داده محدود به تفسیر و گزارش دادهها نیست. علاوه بر این، از تحلیل گران داده انتظار میرود بینش مشتق شده از اطلاعات را برای ذینفعان مختلف ارائه کنند. برای مصورسازی تسلط بر ابزارهای مختلفی مثل as.ggplot ، matplotlib ، d3.js و seaborne، ضروری است.
شهود دادهها (Data Intuition)
فرض کنید شما در سازمانی به عنوان تحلیلگر داده کار میکنید. شما مجموعهای از دادهها را تجزیه و تحلیل کرده و گزارش خود را به تیم ارائه دادهاید تا آنها بتوانند کار خود را آغاز کنند. قبل از شروع کار روی پروژه، تیم ممکن است چند سوال داشته باشد تا درک درستی از پروژه و چگونگی استفاده از دادهها داشته باشد. اما شاید وقت کافی برای پاسخگویی به همه این سوالات را نداشته باشید. این همان جایی است که شهود داده وارد میشود. بر مبنای تجارب قبلی، شما میآموزید که چه سوالاتی ممکن است مطرح شود و چگونه میتوانید مجموعهای از پاسخها را تنظیم کنید که به تمام مجهولات پاسخ دهد. این نکته به شما کمک میکند سوالات را به عنوان "خوب دانستن" یا "نیاز به دانستن" دستهبندی کنید.
وظایف اصلی یک تحلیلگر داده
از مهمترین وظایف یک تحلیلگر دادهها به موارد زیر باید اشاره کرد:
- جمعآوری و استخراج دادههای عددی.
- یافتن روندها، الگوها و الگوریتمهای موجود در دادهها.
- تفسیر اعداد.
- تحلیل تحقیقات بازار.
- ارائه پیشنهاد عملی با هدف اخذ تصمیمات استراتژیک.
برای اینکه یک تحلیلگر داده موفق باشید، باید علاقه زیادی به اعداد، توانایی استخراج بینشهای مفید از دادههای پردازش شده و مهارت ارائه این اطلاعات بصورت دقیق به شکل بصری داشته باشید. این مهارتها را نمی توان یک شبه آموخت. با صبر، سختکوشی و راهنمایی صحیح، همه چیز ممکن است. بله، همه چیز با یک برنامه شروع میشود.
به این مطلب چند ستاره میدهید؟(امتیاز: 4.5 - رای: 1)